home *** CD-ROM | disk | FTP | other *** search
/ Fritz: All Fritz / All Fritz.zip / All Fritz / FILES / GENELOGY / FAMILY.LZH / FAMILY.DOC < prev   
Text File  |  1985-11-02  |  19KB  |  428 lines

  1.                     Family program documentation   Version 1.3           Page 1
  2.  
  3.  
  4.                                       by
  5.                                   John Steed 
  6.                                 6907 Childsdale
  7.                               Rockford, MI 49341
  8.   
  9.                                         
  10. Please share copies of this program with others.  If you find this program to 
  11. be useful to you, please send $10 donation to John Steed.  Also, if you have 
  12. suggestions for improvements, send them along.  
  13.  
  14.  
  15. OVERVIEW:   (program written in basic for IBM PC, PCjr, and compatables)
  16.  
  17. The program will allow you to add, modify, display and print names and 
  18. information about family members (one side of your family).  When printing, or 
  19. displaying you have the option of also showing the relationship of everyone to 
  20. one person.  You can print several times, and each time show how everyone is 
  21. related to a different person.  (You can give everyone at the family reunion 
  22. their own copy showing how they specifically are related to everyone else.)  
  23. When you are adding all the names to the file, you do not enter relationships 
  24. for everyone.  The program will do all the computation.  All you enter as far 
  25. as relationship is concerned is the code number of the person's parent.  
  26.  
  27. All of your family information is stored in the disk file named FAMLFILE.JRS
  28.  
  29. GENERAL:
  30.  
  31. The program is designed to hold all the descendants of one person.  For 
  32. example, you can enter your great-great-grandfather and all his descendants.  
  33. (Which would include you and your children, of course.)  For each person you 
  34. enter, you must first type the code number of the person's parent.  (When 
  35. adding the very first person to the file, in this case, your great-great- 
  36. grandfather, you type 0 (zero) as the person's parent's code number.)  The 
  37. program will assign a code number for each person added.  That code number is 
  38. then used when adding the person's children.  The program will assign each 
  39. person to a generation level.  For example, if a person is located at 
  40. generation level 40, then that person's children are at level 41.  This level 
  41. number is then used to compute relationships.  All relationships are computed 
  42. automatically.  You can do a printout showing how everyone is related to you, 
  43. or to your parent, or to anyone who is in the file.  The program is currently 
  44. designed to compute relationships as far as nine generation levels apart.
  45.  
  46. When you are adding someone, you can enter the following information:
  47.  
  48.    1.  PARENT #
  49.    2.  PERSON'S NAME
  50.    3.  SEX M or F
  51.    4.  BORN DATE
  52.    5.  DIED DATE
  53.    6.  MARRIED DATE
  54.    7.  SPOUSE NAME
  55.    8.  SPOUSE BORN
  56.    9.  SPOUSE DIED
  57.    10. EXTRA
  58.  
  59.  
  60.  
  61.                     Family program documentation   Version 1.2           Page 2
  62.  
  63.  
  64. The first three lines are required information.  The rest is optional.  The 
  65. parent # is the code number of this person's parent.  You must enter parents 
  66. before their children.  The sex is needed when printing relationships, so the
  67. program can tell the aunts from the uncles, etc.                                
  68.  
  69. The field called PERSON'S NAME and the field called SPOUSE NAME can each hold 
  70. a maximum of 30 characters.  All date fields are 8 characters long and should 
  71. be entered as MMDDYYYY.  In other words, 2 digits for month, 2 digits for 
  72. day, and 4 digits for year.
  73.  
  74. The extra field (which holds 6 characters) may be useful if you want to print 
  75. out some other information about the person.  For example if you are getting 
  76. your information from a family history book, you can use the extra space to 
  77. show the page number where this person is recorded.  When you print, you have 
  78. the option to print the extra field.  You are allowed to use commas, if you 
  79. want, in both the names and extra field.  
  80.  
  81. When you are adding someone to the file, you do NOT add the children's 
  82. information on the same screen as the person you are adding.  In order to add 
  83. the children, you use the add routine for each child.  The program will update 
  84. the parent's record as you add the children.  
  85.  
  86. The computer can remember a maximum of 15 children for each person.  When you 
  87. are looking at the information about a person on the screen, it can only show 
  88. the numbers of the first 10 children, but a printout will handle all 15.  When 
  89. you add someone, that person's information is written to the disk, and the 
  90. parent's information is updated to show the code number of the new child just 
  91. added.  In other words, each person's record has a link back to the parent 
  92. plus a link to each child.  Since the program automatically adds the 
  93. children's link to the parent record, it is important that you enter the 
  94. children of a person in the correct order.  In other words, if your uncle Pete 
  95. had three sons, John, Jim, and Jack, then enter John, then Jim, then Jack. (If 
  96. you enter Jack first, he will appear to be older when you do a printout.)  If 
  97. you do make a mistake and enter them in the wrong order, or leave someone out, 
  98. it can be corrected. (see appendix A.) 
  99.  
  100. When you start adding information, the program will return to the add routine 
  101. after each person is added.  To exit from the add routine, push just enter 
  102. when prompted for the first line (the PARENT #). 
  103.  
  104. The current version will only take one spouse's name, so if a person has 
  105. remarried, you must pick which name you want printed.
  106.  
  107. The printing routine assumes your printer can print 132 characters in 
  108. compressed (or condensed) mode.  It sends the code CHR$(15) to put the printer 
  109. in compressed mode.  This works fine for Star and Epson printers.  If you have 
  110. a wide carriage printer, you may want to eliminate the sending of the CHR$(15) 
  111. code.  
  112.  
  113. It is recommended that you have a file called CONFIG.SYS on the disk you boot 
  114. from.  This file should contain the line: 
  115.  
  116. BUFFERS=40
  117.  
  118. That will make the computation of relationships go faster, since it wont have 
  119. to read the disk as often.
  120.  
  121.                     Family program documentation   Version 1.2           Page 3
  122.  
  123.  
  124. GETTING STARTED:
  125.  
  126. The program is written in BASIC.  Start BASIC with the command BASICA/S:200 so 
  127. that the disk buffer area is large enough. (If you forget to do this, you will 
  128. get an error message on the OPEN line.)  Then load the program from basic.  
  129. The program name is FAMILY so type LOAD "FAMILY".  Then type RUN.  All the 
  130. information about your family is stored in the disk file "FAMLFILE.JRS" 
  131.  
  132. If you have a file called FAMILY.BAT on your disk which contains the line:
  133.  
  134. BASICA FAMILY/S:200
  135.  
  136. you may then start the program by just typing FAMILY at the A> prompt.
  137.  
  138. The first person you enter should be your grandparent or great grandparent.  
  139. Then enter all the children of that person.  Then add the children of each of 
  140. those children, etc.  You do not need to add ALL the children before adding 
  141. anyone from the next generation, but you cannot add a person until you have 
  142. added his or her parent. (Actually you can add children first if you HAVE to, 
  143. but the program is designed to add parents before children - see appendix A to 
  144. add a parent of someone who is already in the file.) 
  145.  
  146.      *  Start by adding your grandparent or his or her ancestor.
  147.         When you add your first person, type 0 (zero) for the person's
  148.         parent's number.  That means that the person you are adding has
  149.         no parent in the file.  The program will then assign that person to 
  150.         level 40.  The children of that person will be at generation level 41,
  151.         the grandchildren at level 42 and so on.
  152.  
  153.      *  Don't add anyone unless you have previously entered the person's 
  154.         parent. (Except for first person added.)
  155.  
  156.      *  Add the children in one family in the correct order.  Oldest first.
  157.  
  158.      *  When a date is entered, enter as MMDDYYYY.  For example, the date of
  159.         5/4/1954 must be entered as 05041954.  Do NOT type any / or -. The
  160.         / symbols will be added when printing.  If you don't have complete
  161.         date information, you can just push enter, or type underlines for the
  162.         unknown part. (e.g.  05__1954 if you only know the month and year.)
  163.  
  164.      *  After you add someone, the program will tell you the person's code
  165.         number.  You will need to use that number to add that person's 
  166.         children.  After several names are entered, you can do a printout that
  167.         shows each person's code number.  Otherwise, write down the code 
  168.         numbers that are assigned to everyone, since you may need them. 
  169.  
  170.      *  If you need to add a parent of someone who is already entered (for 
  171.         example you just discovered the name of your great-great-great-
  172.         grandfather) see appendix A.
  173.  
  174.      
  175.  
  176.  
  177.  
  178.   
  179.                     Family program documentation   Version 1.2           Page 4
  180.  
  181.  
  182.      *  When you are typing on a line, do not use the up or down arrow keys.
  183.  
  184.      *  If you make a mistake, and are past the line where the mistake is, 
  185.         just continue, and when you have entered the 10 lines, the program 
  186.         will ask you if you need to correct any lines.  If so, type the line
  187.         number you need to change and push enter.  The cursor will go up to 
  188.         that line so that you may make the correction.  After making all 
  189.         corrections, just push enter to write the record to disk.
  190.  
  191.      *  When you are entering names, you may want to use maiden names.  (It's
  192.         up to you - I just thought I would suggest it.)
  193.      
  194.      *  Use the MODIFY routine to correct information.  If you need to modify
  195.         a parent number or child number, read APPENDIX A first.
  196.  
  197.      *  If you want to LOOK at a person's information, use the modify routine.
  198.         Then after looking, just push enter.
  199.  
  200.      *  The dates are optional.  If you enter them, they will be printed.
  201.  
  202.  
  203. The disk must contain a file called "FAMLFILE.JRS" which will store the 
  204. information.  When first starting out this file will be of length zero.  Each 
  205. record added will take up 197 bytes (characters).  
  206.  
  207. When printing, the dates will have slashes (/) added automatically.  Each 
  208. generation level will be indented further than the previous one.  
  209.  
  210.      
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.                     Family program documentation   Version 1.2           Page 5
  240.  
  241.  
  242. APPENDIX A.   HOW TO CORRECT PROBLEMS
  243.  
  244. If you are correcting ONLY spelling or dates, use MODIFY and read no further.
  245.  
  246. Basically, each person's record MUST contain the correct number for the 
  247. person's parent and the correct numbers for the person's children.  If any 
  248. record in the file has one of those fields wrong, you have a problem.  
  249.  
  250. IF YOU ENTERED SOMEONE'S CHILDREN IN THE WRONG ORDER, do the following.  First, 
  251. you may want to finish entering all the person's children.  Then, make sure 
  252. that you know the code numbers of each of the person's children.  Then modify 
  253. the parent.  Type the parent's code number and the parent's information will 
  254. appear on the screen.  The children's code numbers will show near the bottom.  
  255. The first child you entered will be the first code number showing, the second 
  256. child you entered will be listed second, etc.  You can correct the order on 
  257. the screen by retyping the code numbers in the correct order.  Make sure the 
  258. code number shown for first child is the actual first child, etc.  Do not 
  259. make up any code numbers, and be careful you don't make a mistake since you 
  260. can cause an infinate loop if you put one of the person's ancestors as his 
  261. child.  
  262.                                                    
  263.  
  264. IF YOU ENTERED SOMEONE WITH THE WRONG PARENT NUMBER, you can correct it by 
  265. doing the following.  First, modify the record of the person you said was the 
  266. parent, but was not.  When the wrong parent's record is showing on the screen, 
  267. find the incorrect code number which is displayed as one of the children.  If 
  268. it is the last child listed, just enter blanks in its place.  
  269.  
  270. If it is not the last child, enter the next child shown where the wrong code 
  271. is.  Then move each of the children's code numbers up one line and erase the 
  272. position where the last child originally was.  Do not leave any blanks between 
  273. the children's codes. (The first child must be in the first position, the 
  274. second in the second, etc.)  
  275.  
  276. After fixing the wrong parent's record, you must fix the person's record where 
  277. you entered the wrong parent number.  Display that record and fix the parent 
  278. number to the correct one.  
  279.  
  280. Lastly, you must display the correct parent record and add the person's code 
  281. as a child.  Again, be sure the children are in the correct order and there 
  282. are no spaces between children.  
  283.  
  284. IF YOU NEED TO ADD A PARENT OF SOMEONE WHO IS ALREADY IN THE FILE, do the 
  285. following.  First, you need to know the LEVEL number of the person who is in 
  286. the file.  When the person's record shows on the screen, the LEVEL number is 
  287. shown near the bottom of the screen.  When you add the person's parent, the 
  288. parent must have a LEVEL of 1 less than the child.  For example, if the child 
  289. is LEVEL 15 the parent must be LEVEL 14.  Add the parent.  When asked for the 
  290. parent # of the person you are adding, type 0 (zero).  The program will then 
  291. ask for the LEVEL number.  Type the number you computed.  Then type the rest 
  292. of the information.  Since you already entered one or more children for this 
  293. person, also type in the children's code numbers for the person you are 
  294. adding.  Then go to each of the children of this person and type in the new 
  295. parent's code number for his or her parent number (top line).  
  296.  
  297.  
  298.  
  299.                     Family program documentation   Version 1.2           Page 6
  300.  
  301.  
  302. APPENDIX B.     A LITTLE EXPLANATION ABOUT RELATIONSHIPS: 
  303.  
  304. Your uncle is the brother of your father or mother.
  305. Your aunt is the sister of your father or mother. 
  306. Your great uncle (or grand uncle) is the brother of your grandfather or
  307.     grandmother.
  308. Your great aunt (or grand aunt) is the sister of your grandfather or
  309.     grandmother.  
  310. Your great-great uncle is the brother of your great-grandfather or 
  311.     great-grandmother.
  312. Your great-great aunt is the sister of your great-grandfather or 
  313.     great-grandmother.
  314. Your first cousin is the child of your aunt or uncle.
  315. Your second cousin is the grandchild of your great aunt or great uncle.
  316.     (If two people are first cousins, the children of each of the people will
  317.      be second cousins.)
  318. Your third cousin is the great-grandchild of your great-great uncle or 
  319.     great-great aunt. (Children of two second cousins, will be third cousins.)
  320. Your first cousin, once removed, is the child of your first cousin or is the
  321.     child of your great uncle or great aunt. (see also REMOVED COUSINS)
  322.     If someone is your first cousin, then his or her child is your first
  323.     cousin once removed. (Once removed means one generation level different 
  324.     from you.)  All your regular cousins (first, second, etc.) are at the same 
  325.     generation level as yourself.  Those at different levels are "removed".
  326.     If someone is YOUR first cousin once removed, then you are HIS or HER
  327.     first cousin once removed also.
  328. Your second cousin once removed is the child of your second cousin.
  329. Your first cousin twice removed is the child of your first cousin once 
  330.     removed.  (The grandchild of your first cousin.) 
  331. Your second cousin twice removed is the child of your second cousin once
  332.     remove.  (The grandchild of your second cousin.)
  333.  
  334. REMOVED COUSINS:
  335. If two people are some type of cousins, but they are at different generation 
  336. levels, then here is the way to compute their relationship. (The program does 
  337. this automatically when printing, but you may want to know what it is doing.)
  338.  
  339.     1. Count how many generation levels they are apart.  This is the number 
  340.        they are "removed".
  341.     2. Start with the one at the highest generation level (the older level)
  342.        and count how many generations up you must go to find the brothers 
  343.        or sisters that are the ancestors of these cousins.  This is the 
  344.        "FIRST" or "SECOND" or "THIRD" part of the cousin relationship.
  345.                                      
  346.                           GREAT-GRANDFATHER
  347.                               /     \
  348.                     GRANDFATHER      GREAT-UNCLE
  349.                       /     \              \
  350.                 FATHER     UNCLE        1st COUSIN ONCE REMOVED
  351.                 /  \         \                   \
  352.             :YOU: BROTHER  1st COUSIN            2nd COUSIN
  353.              /      \          \                     \
  354.           SON     NEPHEW   1st COUSIN ONCE REMOVED   2nd COUSIN ONCE REMOVED
  355.           /         /           \                      \
  356.   GRANDSON   GRAND-NEPHEW  1st COUSIN TWICE REMOVED  2nd COUSIN TWICE REMOVED
  357.                   /              \                       \
  358.       GREAT-GRAND-NEPHEW  1st COUSIN THRICE REMOVED  2nd COUSIN THRICE REMOVED
  359.                     Family program documentation   Version 1.2           Page 7
  360.  
  361.  
  362. APPENDIX C.   SAMPLE PRINTOUT.
  363.  
  364. Below is an example of a printout.  Note that each new generation is indented.
  365. All relationships such as UNCLE, COUSIN, etc. are computed by the program.
  366.  
  367.  
  368. * JOSEPH P. JONES  (12/20/1895) - (03/05/1949) m. SUSAN SMITH (01/05/1902 -
  369.   (GRANDFATHER)
  370.  
  371.   * JOHN JONES (05/19/1920 -   m. (12/07/1940) MARY GREEN (08/05/1921 -
  372.     (UNCLE)
  373.             
  374.     * BILL JONES (03/23/1942 -
  375.       (FIRST COUSIN)
  376.  
  377.     * MARY JONES (02/04/1944 -    m. (03/04/1964) PETER WHITE
  378.       (FIRST COUSIN)
  379.  
  380.       * FRANK WHITE (05/04/1971 -
  381.         (FIRST COUSIN ONCE REMOVED)
  382.    
  383.   * MARTHA JONES (09/19/1923 - 11/17/1981)
  384.     (AUNT)
  385.  
  386.   * GEORGE JONES (12/13/1926 -  m. (01/05/1949) LOIS WILSON (03/18/1927 -
  387.     (FATHER)
  388.  
  389.     * CAROL JONES (05/18/1953 -
  390.       (SISTER)
  391.  
  392.     * JACK JONES (05/03/1955 -  m. (08/23/1977) MICHELE MITTER (07/22/1955 -
  393.       (MYSELF)
  394.  
  395.       * MARTHA JONES (04/03/1981 -
  396.         (DAUGHTER)
  397.  
  398.  
  399.  
  400. APPENDIX D.    CHANGES FROM PRIOR VERSIONS.
  401.  
  402. Version 1.3 contains the following changes.
  403.  
  404.     1.  The lines for children's numbers are no longer on the add screen.
  405.                                
  406.     2.  When modifying, the parent's name also shows.  Also person's name is 
  407.         bold.
  408.  
  409.     3.  When adding, the previous person's name and number show at the bottom.
  410.  
  411.     4.  When displaying, family names are bold.
  412.  
  413.     5.  After adding or modifying, the write buffer is written to disk in case
  414.         disk is removed before typing S to stop.
  415.  
  416.     6.  Additional error handling added.
  417.  
  418.  
  419. Version 1.2 contains the following changes from version 1.1.
  420.  
  421.     1.  There is now the option to display instead of print.
  422.  
  423.     2.  The FAMLFILE.JRS file can be sorted with SORT since each record
  424.         now ends with a carriage return and line feed.
  425.  
  426.     3.  Additional error handling routines were added.
  427.  
  428.